Hallo zusammen, es ist Donnerstagabend, wir verbringen wieder unseren Abend zusammen.
Das Schöne ist, wir haben spannende Themen, die wir besprechen wollen und fangen wir mal mit dem
aktuellen Übungsblatt an. Wir haben eine Anfrage bekommen, im Wesentlichen waren das zwei Sachen.
Das erste war, wäre es möglich die Abgabe zu verlängern, weil wir das Einfügen ja quasi erst
heute besprechen, machen wir auf gar keinen Fall, nein, nur ein Spaß. Mittwoch, Sie können gerne
die Lösung bis Mittwoch abgeben, sodass Sie noch ein paar Tage Zeit haben, das nachzuarbeiten.
Das zweite war, in dem Übungsblatt gibt es ja das Problem, dass man auch Knoten mit den gleichen
Elementen einfügen muss und das haben wir so gar nicht hier gemacht. Ja, das ist voll fies und
total richtig und war auch so beabsichtigt. Warum machen wir das? Natürlich nicht, weil wir Sie
ärgern wollen, darum geht es ja gar nicht, sondern weil Sie immer wieder mit der Situation konfrontiert
werden, sei es in der Forschung oder in der Praxis, dass Sie das hier ein Verfahren mal gelernt haben
und plötzlich sehen Sie, okay, so in der Form funktioniert das gar nicht, weil sich die Rahmenbedingungen
ganz leicht geändert haben. Also im Grunde genommen ist das eine Minitransferaufgabe, in der man sich
überlegen muss, was mache ich jetzt eigentlich, wie gehe ich damit um und da gibt es mehrere,
mehrere Lösungen, ist wirklich nicht schwierig, also da kommen Sie, also Sie, die hier sind,
kommen wahrscheinlich sicher drauf. Okay, dann legen wir mal los. Wir beschäftigen uns immer noch
mit dem faszinierenden Thema der B-Bäume, damit werden wir anfangen und wenn wir zeitlich fix
genug sind, können wir uns auch AVL-Bäume anschauen. Ich möchte gerne noch einmal in
Erinnerung rufen, was das ist und warum wir das machen, es hatte mich eine der Kommilitonen
nachgefragt am Ende, warum machen wir das und dann habe ich gemerkt, meine Motivation ist
wahrscheinlich ausbaufähig an der Stelle. Darum wiederholen wir das noch mal ganz kurz, warum wir
bei uns überhaupt B-Bäume anschauen. Also bis jetzt haben wir relativ schön gesehen,
Bäume sind toll, solange die Bäume balanciert sind, weil wenn sie nicht balanciert sind,
dann sind das im Wesentlichen entartete Bäume, das waren diese blöden Listen, die von der
Datenstruktur her toll sind, aber die ganzen schönen Sucheigenschaften und so weiter nicht
mehr haben. So, das ist auch quasi das, was wir im Kopf haben und jetzt sagen die B-Bäume,
naja, was wir gerne vermeiden wollen, ist, dass wir eine unglaublich hohe Tiefe haben. Also wir
wollen eine Baumkonstruktion machen, die relativ flach ist und warum wollen wir das haben? Na ja,
wenn wir uns das optisch mal vorstellen, dann können wir uns vorstellen, dass das hier, sagen
wir mal, der Hauptspeicher ist, Ram und es ist klar, egal wie groß der ist, der ist natürlich
limitiert, irgendwann ist dieser Speicher einfach voll. Das heißt, wir wollen vielleicht noch einen
kleinen Platz reservieren innerhalb dieses Speichers, damit wir gewisse Operationen durchführen
müssen, aber was machen wir mit unseren riesigen Datenmengen? Also wenn Sie später vielleicht mal
medizinische Daten durchflügen oder im Bereich der KI sind, wo Sie riesige Datenmengen haben oder
auf verschlüsselten Daten arbeiten wollen, die sind in der Regel auch sehr groß, dann ist einfach
die Frage, irgendwo muss der Speicher hin. Das heißt, wir kriegen alles nicht in unseren Hauptspeicher
rein und wenn wir riesige Datenbanken haben, dann haben wir hier in der Regel eine große Datenbank,
die nicht so schnell ist wie unser fantastischer Arbeitsspeicher und das einzige, was wir machen
können, ist die einzige Möglichkeit, wir müssen Daten aus dieser Datenbank lesen und in unseren
Hauptspeicher reinschieben und gegebenenfalls wieder zurückschreiben und das Problem bei diesem
Ansatz, eigentlich kein Problem, aber das, was das herausfordernd macht, ist, dass diese Operation
hier, die ist langsam. Sie können sich vorstellen, dass die Daten vielleicht in der Google Cloud oder
so liegen, aber das hier ist das teure und wenn wir jetzt ganz normale Baumstrukturen haben, also
beliebige Binärbäume, dann kann es sein, dass diese Knoten einfach irgendwo hier verteilt liegen und
sie dadurch eine sehr hohe Anzahl an Zugriffen haben. Also immer wenn ich darauf
greife, wenn ich darauf zugreifen muss, ganz schlechte Idee und die Idee der B-Bäume ist, dass man
diesen Platz, den man hier eben zur Verfügung hat, also das hier, dass man die Knoten von den
B-Bäumen entsprechend groß wählt. Also idealerweise können wir einen Knoten eines B-Baumes wunderbar
in diesen Speicher reinlegen und wir hatten dann auch gesagt, dadurch, dass dieser Zugriff auf unser
externes Medium hier so unglaublich teuer ist, ist es in der Tat in der Praxis egal, wie wir unseren
Presenters
Zugänglich über
Offener Zugang
Dauer
01:30:48 Min
Aufnahmedatum
2023-07-06
Hochgeladen am
2023-07-06 23:19:04
Sprache
de-DE